package tugou

//	"errors"

// type gateModule struct {
// 	gateInfo
// 	msg  chan<- messageToDynamicOrFix
// 	join chan<- gatePlayerJoin
// 	quit chan<- gateInfo
// }
// type gateModuleJoin struct {
// 	gateModule
// 	reply   chan<- interface{} //回答数据
// 	request interface{}        //请求数据
// }

// type moduleGateOrHome struct { //玩家的门
// 	state  string //是否能够使用
// 	palyer PlayerI
// 	gateModule
// }

// func (this *moduleGateOrHome) Send(funcName string, data interface{}) error {
// 	if this.msg == nil {
// 		return Err_Gate_IS_Disable
// 	}
// 	if this.state == Gate_state_home {
// 		msg := messageModule{}
// 		msg.funcName = funcName
// 		msg.data = data
// 		msg.route = msg_Route_ServerToServer
// 		msg.player = this.palyer.getGateInfo()
// 		msg.module = this.gateModule.gateInfo
// 		this.msg <- msg
// 		return nil
// 	}
// 	return Err_Gate_IS_NO_Home
// }
// func (this *moduleGateOrHome) sendByClient(funcName string, data interface{}) error {
// 	if this.msg == nil {
// 		return Err_Gate_IS_Disable
// 	}
// 	if this.state == Gate_state_home {
// 		msg := messageModule{}
// 		msg.funcName = funcName
// 		msg.data = data
// 		msg.route = msg_Route_ClientToServer
// 		msg.player = this.palyer.getGateInfo()
// 		msg.module = this.gateModule.gateInfo
// 		this.msg <- msg
// 		return nil
// 	}
// 	return Err_Gate_IS_NO_Home
// }
// func (this *moduleGateOrHome) Join(data interface{}) (PlayerHome, error) {
// 	return nil, nil
// }
// func (this *moduleGateOrHome) Quit() error {
// 	if this.quit == nil {
// 		return Err_Gate_IS_Disable
// 	}
// 	if this.state == Gate_state_home {
// 		this.quit <- this.palyer.getGateInfo()
// 		return nil
// 	}
// 	return Err_Gate_IS_NO_Home
// }
// func (this *moduleGateOrHome) State() string {
// 	return this.state
// }
// func (this *moduleGateOrHome) ToHome() (ModuleHome, error) {
// 	if this.state == Gate_state_home {
// 		return this, nil
// 	}
// 	return nil, Err_Gate_IS_NO_Home
// }
// func (this *moduleGateOrHome) ToGate() (ModuleGate, error) {
// 	if this.state == Gate_state_gate {
// 		return this, nil
// 	}
// 	return nil, Err_Gate_IS_No_Gate
// }

// type ModuleGate interface { //还未加入的模块
// 	State() string
// 	ToHome() (ModuleHome, error)
// 	Join(data interface{}) (PlayerHome, error)
// }
// type ModuleHome interface { //已经加入的模块
// 	State() string
// 	ToGate() (ModuleGate, error)
// 	Quit() error
// }
